
<template>
            <yt-grid width="1664" height="1016" background="#4A90E208" class="page-d9h59">
                
            <yt-grid-item fixedSize='selfAdaption' id="yt-8idhum11xtk7k" gridColumnStart="33" gridColumnEnd="1620" gridRowStart="168" gridRowEnd="988" zIndex="1" previewType="FixedWH">
                <div ref='ref3' class='webVueAntYtRectangle webVueAntYtRectangleStyle-udacc webVueAntYtRectangleStyle'>
                            
                        </div>
            </yt-grid-item>
        

            <yt-grid-item fixedSize='selfAdaption' :isShow='NewisShow1' id="yt-mylw1m11xtk7m" gridColumnStart="67" gridColumnEnd="147" gridRowStart="193" gridRowEnd="225" zIndex="2" previewType="FixedWH">
                <a-button ref='ref4' @click="()=> { showAddModal(); }" class='webVueAntButton webVueAntYtButtonStyle-lr9t2  webVueAntYtButtonStyle center' :loading='Newloading1'>
                            <span class='yt-button-content ' v-html='"新增"'>
                            
                        </span>
                        </a-button>
            </yt-grid-item>
        

            <yt-grid-item fixedSize='selfAdaption' id="yt-79gp4m11xtka0" gridColumnStart="33" gridColumnEnd="1620" gridRowStart="61" gridRowEnd="154" zIndex="3" previewType="FixedWH">
                <div ref='ref12' class='webVueAntYtRectangle webVueAntYtRectangleStyle-gwwui webVueAntYtRectangleStyle'>
                            
                        </div>
            </yt-grid-item>
        

            <yt-grid-item fixedSize='selfAdaption' :isShow='RoleNameisShow1' id="yt-yg8q5m11xtka3" gridColumnStart="67" gridColumnEnd="375" gridRowStart="92" gridRowEnd="124" zIndex="4" previewType="FixedWH">
                <a-form-item ref='ref13' class='webVueAntInputFormItem webVueAntYtInputFormItem-wmuux  webVueAntYtInputFormItem show-label' name='RoleNamevalue1' :colon='false'>
                            <template #label>
                            <div class='label-content '>
                            <span class='ant-form-item-content ' v-html='"角色名称"'>
                            
                        </span>
                        </div>
                        </template>
<a-input data-event class='webVueAntinput webVueAntYtInputStyle-zr72t webVueAntYtInputStyle' v-model:value='RoleNamevalue1' :maxLength='100' :placeholder='"请输入"'>
                            
                        </a-input>
                        </a-form-item>
            </yt-grid-item>
        

            <yt-grid-item fixedSize='selfAdaption' id="yt-ah2k5m11xtkae" gridColumnStart="1381" gridColumnEnd="1461" gridRowStart="91" gridRowEnd="123" zIndex="5" previewType="FixedWH">
                <a-button ref='ref14' @click="()=> { fetchRolesByRoleName(); }" class='webVueAntButton webVueAntYtButtonStyle-3iwpb  webVueAntYtButtonStyle center' :loading='Queryloading1'>
                            <span class='yt-button-content ' v-html='"查询"'>
                            
                        </span>
                        </a-button>
            </yt-grid-item>
        

            <yt-grid-item fixedSize='selfAdaption' :isShow='ResetisShow1' id="yt-41lo3m11xtkah" gridColumnStart="1481" gridColumnEnd="1561" gridRowStart="91" gridRowEnd="123" zIndex="7" previewType="FixedWH">
                <a-button ref='ref15' @click="()=> { resetAndFetchRoles(); }" class='webVueAntButton webVueAntYtButtonStyle-nt56z  webVueAntYtButtonStyle center' :loading='Resetloading1'>
                            <span class='yt-button-content ' v-html='"重置"'>
                            
                        </span>
                        </a-button>
            </yt-grid-item>
        

            <yt-grid-item fixedSize='selfAdaption' :isShow='AddedpopupwindowisShow1' id="yt-6tghwm11xtkan" gridColumnStart="532" gridColumnEnd="1047" gridRowStart="112" gridRowEnd="531" zIndex="8" previewType="FixedWH">
                <yt-custom-modal ref='ref17' @ok="()=> { addRoleAndRefresh(); }" @cancel="()=> { cancelAddModal(); }" class='webVueAntYtModal  webVueAntYtModalStyle' v-model:isShow='AddedpopupwindowisShow1' :title='"新增"'>
                            <template #content>
                            <a-form class='webVueAntForm ' :model='Addedpopupwindowform1' ref='ref17_form'>
                            
            <yt-grid  previewType="FixedWH" width="511" height="313">
                
            <yt-grid-item fixedSize='selfAdaption' id="yt-or29im11xtkc7" gridColumnStart="112" gridColumnEnd="429" gridRowStart="39" gridRowEnd="71" zIndex="1" previewType="FixedWH">
                <a-form-item ref='ref35' class='webVueAntInputFormItem webVueAntYtInputFormItem-tk57k  webVueAntYtInputFormItem show-label' name='RoleName1value1' :colon='false' :rules='[{"required":true,"message":"不能为空"}]'>
                            <template #label>
                            <div class='label-content '>
                            <span class='ant-form-item-content ' v-html='"角色名称"'>
                            
                        </span>
                        </div>
                        </template>
<a-input data-event class='webVueAntinput webVueAntYtInputStyle-28vcp webVueAntYtInputStyle' v-model:value='Addedpopupwindowform1.RoleName1value1' :maxLength='100' :placeholder='"请输入"'>
                            
                        </a-input>
                        </a-form-item>
            </yt-grid-item>
        

            <yt-grid-item fixedSize='selfAdaption' id="yt-1l9rzm11xtkcb" gridColumnStart="112" gridColumnEnd="429" gridRowStart="107" gridRowEnd="139" zIndex="2" previewType="FixedWH">
                <a-form-item ref='ref36' class='webVueAntInputFormItem webVueAntYtInputFormItem-wj8c2  webVueAntYtInputFormItem show-label' name='RoleCodevalue1' :colon='false' :rules='[{"required":true,"message":"不能为空"}]'>
                            <template #label>
                            <div class='label-content '>
                            <span class='ant-form-item-content ' v-html='"角色代号"'>
                            
                        </span>
                        </div>
                        </template>
<a-input data-event class='webVueAntinput webVueAntYtInputStyle-brxbt webVueAntYtInputStyle' v-model:value='Addedpopupwindowform1.RoleCodevalue1' :maxLength='100' :placeholder='"请输入"'>
                            
                        </a-input>
                        </a-form-item>
            </yt-grid-item>
        

            <yt-grid-item fixedSize='selfAdaption' id="yt-0xd6jm11y8we9" gridColumnStart="150" gridColumnEnd="429" gridRowStart="175" gridRowEnd="275" zIndex="3" previewType="FixedWH">
                <a-form-item ref='ref71' class='webVueAntTextAreaFormItem webVueAntYtTextAreaFormItem-jyjsz  webVueAntYtTextAreaFormItem show-label' name='Descriptionvalue1' :colon='false' :rules='[]'>
                            <template #label>
                            <div class='label-content '>
                            <span class='ant-form-item-content ' v-html='"描述"'>
                            
                        </span>
                        </div>
                        </template>
<a-textarea data-event class='webVueAntTextarea webVueAntYtTextAreaStyle-xtxlf webVueAntYtTextAreaStyle' v-model:value='Addedpopupwindowform1.Descriptionvalue1' :placeholder='"请输入"' :maxLength='100'>
                            
                        </a-textarea>
                        </a-form-item>
            </yt-grid-item>
        
            </yt-grid>
            
                        </a-form>
                        </template>
                        </yt-custom-modal>
            </yt-grid-item>
        

            <yt-grid-item fixedSize='selfAdaption' :isShow='RoleTableisShow1' id="yt-yi1qwm11y50kq" gridColumnStart="67" gridColumnEnd="1601" gridRowStart="257" gridRowEnd="657" zIndex="6" previewType="FixedWH">
                <yt-table ref='ref67' @onTableChange="()=> { fetchRolesByPage(); }" class='webVueAntYtTable webVueAntYtTableStyle-k5k67 webVueAntYtTableStyle' :canSelect='false' v-model:currentRow='RoleTablecurrentRow1' v-model:selectedRows='RoleTableselectedRows1' v-model:total='RoleTabletotal1' v-model:current='RoleTablecurrent2' v-model:pageSize='RoleTablepageSize1' :columns='RoleTabledata1.columns' :dataSource='RoleTabledata1.dataSource' :scroll='{y:286.00349702226356}'>
                            <template #cell='{ column, record }'>
                            <template v-if='column.dataIndex === "operation"' :forKey='"operation"'>
                            
            <yt-grid  previewType="FixedWH" width="381" height="48">
                
            <yt-grid-item fixedSize='selfAdaption' :isShow='EditisShow1' id="yt-9sih8m11y6f0m" gridColumnStart="40" gridColumnEnd="120" gridRowStart="6" gridRowEnd="38" zIndex="1" previewType="FixedWH">
                <a-button ref='ref68' @click="()=> { showEditModal(record); }" class='webVueAntButton webVueAntYtButtonStyle-mam7g  webVueAntYtButtonStyle center' :loading='Editloading1'>
                            <span class='yt-button-content ' v-html='"编辑"'>
                            
                        </span>
                        </a-button>
            </yt-grid-item>
        

            <yt-grid-item fixedSize='selfAdaption' :isShow='PermissionManagementisShow1' id="yt-w9c9rm11y6jy5" gridColumnStart="150" gridColumnEnd="230" gridRowStart="6" gridRowEnd="38" zIndex="2" previewType="FixedWH">
                <a-button ref='ref69' @click="()=> { showPermissionModal(record); }" class='webVueAntButton webVueAntYtButtonStyle-25eak  webVueAntYtButtonStyle center' :loading='PermissionManagementloading1'>
                            <span class='yt-button-content ' v-html='"权限管理"'>
                            
                        </span>
                        </a-button>
            </yt-grid-item>
        

            <yt-grid-item fixedSize='selfAdaption' :isShow='DeleteisShow1' id="yt-l3a6om11y6pgc" gridColumnStart="260" gridColumnEnd="340" gridRowStart="6" gridRowEnd="38" zIndex="3" previewType="FixedWH">
                <a-button ref='ref70' @click="()=> { confirmAndDeleteRole(record); }" class='webVueAntButton webVueAntYtButtonStyle-r4gnz  webVueAntYtButtonStyle center' :loading='Deleteloading1'>
                            <span class='yt-button-content ' v-html='"删除"'>
                            
                        </span>
                        </a-button>
            </yt-grid-item>
        
            </yt-grid>
            
                        </template>
                        </template>
                        </yt-table>
            </yt-grid-item>
        

            <yt-grid-item fixedSize='selfAdaption' :isShow='EditpopupwindowisShow1' id="yt-fxw8wm11yaecu" gridColumnStart="562" gridColumnEnd="1077" gridRowStart="142" gridRowEnd="561" zIndex="9" previewType="FixedWH">
                <yt-custom-modal ref='ref72' class='webVueAntYtModal  webVueAntYtModalStyle' v-model:isShow='EditpopupwindowisShow1' :title='"编辑"'>
                            <template #content>
                            <a-form class='webVueAntForm ' :model='Editpopupwindowform1' ref='ref72_form'>
                            
            <yt-grid  previewType="FixedWH" width="511" height="313">
                
            <yt-grid-item fixedSize='selfAdaption' id="yt-p4cd9m11yaed4" gridColumnStart="112" gridColumnEnd="429" gridRowStart="39" gridRowEnd="71" zIndex="1" previewType="FixedWH">
                <a-form-item ref='ref76' class='webVueAntInputFormItem webVueAntYtInputFormItem-8aj10  webVueAntYtInputFormItem show-label' name='RoleName1value2' :colon='false' :rules='[{"required":true,"message":"不能为空"}]'>
                            <template #label>
                            <div class='label-content '>
                            <span class='ant-form-item-content ' v-html='"角色名称"'>
                            
                        </span>
                        </div>
                        </template>
<a-input data-event class='webVueAntinput webVueAntYtInputStyle-oe1wr webVueAntYtInputStyle' v-model:value='Editpopupwindowform1.RoleName1value2' :maxLength='100' :placeholder='"请输入"'>
                            
                        </a-input>
                        </a-form-item>
            </yt-grid-item>
        

            <yt-grid-item fixedSize='selfAdaption' id="yt-a3puxm11yaedi" gridColumnStart="150" gridColumnEnd="429" gridRowStart="125" gridRowEnd="225" zIndex="3" previewType="FixedWH">
                <a-form-item ref='ref78' class='webVueAntTextAreaFormItem webVueAntYtTextAreaFormItem-c7h75  webVueAntYtTextAreaFormItem show-label' name='Descriptionvalue2' :colon='false' :rules='[]'>
                            <template #label>
                            <div class='label-content '>
                            <span class='ant-form-item-content ' v-html='"描述"'>
                            
                        </span>
                        </div>
                        </template>
<a-textarea data-event class='webVueAntTextarea webVueAntYtTextAreaStyle-2pc1u webVueAntYtTextAreaStyle' v-model:value='Editpopupwindowform1.Descriptionvalue2' :placeholder='"请输入"' :maxLength='100'>
                            
                        </a-textarea>
                        </a-form-item>
            </yt-grid-item>
        
            </yt-grid>
            
                        </a-form>
                        </template>
                        </yt-custom-modal>
            </yt-grid-item>
        

            <yt-grid-item fixedSize='selfAdaption' :isShow='PermissionAssignmentPopupisShow1' id="yt-f9lgrm11yb614" gridColumnStart="592" gridColumnEnd="1107" gridRowStart="172" gridRowEnd="591" zIndex="10" previewType="FixedWH">
                <yt-custom-modal ref='ref79' @ok="()=> { closePermissionModal(); updatePermissionsAndRefresh(); }" class='webVueAntYtModal  webVueAntYtModalStyle' v-model:isShow='PermissionAssignmentPopupisShow1' :title='"权限管理"'>
                            <template #content>
                            <a-form class='webVueAntForm ' :model='PermissionAssignmentPopupform1' ref='ref79_form'>
                            
            <yt-grid  previewType="FixedWH" width="511" height="313">
                
            <yt-grid-item fixedSize='selfAdaption' id="yt-iv2cxm11ybni1" gridColumnStart="97" gridColumnEnd="413" gridRowStart="106" gridRowEnd="138" zIndex="1" previewType="FixedWH">
                <a-form-item ref='ref84' class='webVueSelectFormItem webVueAntYtSelectFormItem-6oitv  webVueAntYtSelectFormItem show-label' name='PermissionItemvalue1' :colon='false' :rules='[]'>
                            <template #label>
                            <div class='label-content '>
                            <span class='ant-form-item-content ' v-html='"权限项"'>
                            
                        </span>
                        </div>
                        </template>
<a-select data-event class='webVueSelect  webVueAntYtSelectStyle' :dropdownClassName='"popup_yt-iv2cxm11ybni1"' :showArrow='true' v-model:value='PermissionAssignmentPopupform1.PermissionItemvalue1' :placeholder='"请输入"' :mode='"single"' :options='[{"label":"选项1","value":"选项1","disabled":false,"select":false},{"label":"选项2","value":"选项2","disabled":false,"select":false}]' :showSearch='true'>
                            
                        </a-select>
                        </a-form-item>
            </yt-grid-item>
        
            </yt-grid>
            
                        </a-form>
                        </template>
                        </yt-custom-modal>
            </yt-grid-item>
        
            </yt-grid>
        </template>

<script>

  import { loadCss } from "../shared/loadTheme";
import axios from "axios";
import { message, Modal } from "ant-design-vue";
import { h } from "vue";
export default {
  data() {
    return {
      Editloading1: false,
      EditisShow1: true,
      RoleNamevalue1: "",
      RoleNameisShow1: true,
      Deleteloading1: false,
      DeleteisShow1: true,
      EditpopupwindowisShow1: false,
      Editpopupwindowform1: {
        id: null,
        RoleName1value2: "",
        Descriptionvalue2: ""
      },
      Resetloading1: false,
      ResetisShow1: true,
      Queryloading1: false,
      PermissionAssignmentPopupisShow1: false,
      PermissionAssignmentPopupform1: {
        id: null,
        PermissionItemvalue1: undefined
      },
      RoleTablecurrentRow1: {},
      RoleTableselectedRows1: [],
      RoleTablepageSize1: 10,
      RoleTabledata1: {
        columns: [{
          key: "id",
          title: "id",
          dataIndex: "id"
        }, {
          key: "roleName",
          title: "角色名称",
          dataIndex: "roleName"
        }, {
          key: "roleCode",
          title: "角色代号",
          dataIndex: "roleCode"
        }, {
          key: "roleDescription",
          title: "角色描述",
          dataIndex: "roleDescription"
        }, {
          key: "operation",
          title: "操作",
          dataIndex: "operation",
          cellType: "slot"
        }],
        dataSource: [{
          id: 1,
          roleName: "标题1",
          roleCode: "标题1"
        }, {
          id: 2,
          roleName: "标题2",
          roleCode: "标题2"
        }]
      },
      RoleTablecurrent2: 1,
      RoleTabletotal1: 2,
      RoleTableisShow1: true,
      PermissionManagementloading1: false,
      PermissionManagementisShow1: true,
      AddedpopupwindowisShow1: false,
      Addedpopupwindowform1: {
        id: null,
        RoleName1value1: "",
        RoleCodevalue1: "",
        Descriptionvalue1: ""
      },
      Newloading1: false,
      NewisShow1: true
    };
  },
  watch: {},
  methods: {
    async fetchRolesByRoleName() {
      try {
        const response = await this.executeBackendInterface('getRolesByRoleName', {
          roleName: this.RoleNamevalue1,
          current: this.RoleTablecurrent2,
          pageSize: this.RoleTablepageSize1
        });
        if (response.flag) {
          this.RoleTabledata1.dataSource = response.data.data.map(item => ({
            id: item.id,
            roleName: item.role_name,
            roleCode: item.role_code,
            roleDescription: item.role_description
          }));
          this.RoleTabletotal1 = response.data.total;
        } else {
          message.error(response.message);
        }
      } catch (error) {
        message.error('查询角色失败');
      }
    },
    async resetAndFetchRoles() {
      this.RoleNamevalue1 = "";
      await this.initFetchAllRoles();
    },
    async initFetchAllRoles() {
      try {
        const response = await this.executeBackendInterface('getAllRoles', {
          current: this.RoleTablecurrent2,
          pageSize: this.RoleTablepageSize1
        });
        if (response.flag) {
          this.RoleTabledata1.dataSource = response.data.data.map(item => ({
            id: item.id,
            roleName: item.role_name,
            roleCode: item.role_code,
            roleDescription: item.role_description
          }));
          this.RoleTabletotal1 = response.data.total;
        } else {
          message.error(response.message);
        }
      } catch (error) {
        message.error('获取所有角色失败');
      }
    },
    async fetchRolesByPage() {
      await this.initFetchAllRoles();
    },
    async showEditModal(record) {
      try {
        const response = await this.executeBackendInterface('showEditModal', {
          id: record.id
        });
        if (response.flag) {
          this.Editpopupwindowform1 = {
            id: response.data.id,
            RoleName1value2: response.data.role_name,
            Descriptionvalue2: response.data.role_description
          };
          this.EditpopupwindowisShow1 = true;
        } else {
          message.error(response.message);
        }
      } catch (error) {
        message.error('获取角色详情失败');
      }
    },
    async confirmAndDeleteRole(record) {
      Modal.confirm({
        title: '确认删除',
        content: '确定要删除该角色吗？',
        onOk: async () => {
          try {
            const response = await this.executeBackendInterface('deleteRole', {
              id: record.id
            });
            if (response.flag) {
              message.success('删除成功');
              await this.initFetchAllRoles();
            } else {
              message.error(response.message);
            }
          } catch (error) {
            message.error('删除角色失败');
          }
        },
        onCancel() {
          message.info('取消删除');
        }
      });
    },
    async updatePermissionsAndRefresh() {
      try {
        const response = await this.executeBackendInterface('updateRolePermissions', {
          roleId: this.PermissionAssignmentPopupform1.id,
          permissionIds: this.PermissionAssignmentPopupform1.PermissionItemvalue1
        });
        if (response.flag) {
          message.success('更新权限成功');
          this.PermissionAssignmentPopupisShow1 = false;
          await this.initFetchAllRoles();
        } else {
          message.error(response.message);
        }
      } catch (error) {
        message.error('更新权限失败');
      }
    },
    showAddModal() {
      // 显示新增弹窗
      this.AddedpopupwindowisShow1 = true;
    },
    async addRoleAndRefresh() {
      try {
        // 校验表单
        const values = await this.$refs.ref17_form.validateFields();

        // 调用后端接口新增角色
        const response = await this.executeBackendInterface('addRole', {
          RoleName1value1: this.Addedpopupwindowform1.RoleName1value1,
          RoleCodevalue1: this.Addedpopupwindowform1.RoleCodevalue1,
          Descriptionvalue1: this.Addedpopupwindowform1.Descriptionvalue1
        });
        if (response.flag) {
          // 提示成功信息
          message.success(response.message);

          // 关闭并清空弹窗内容
          this.AddedpopupwindowisShow1 = false;
          this.Addedpopupwindowform1 = {
            id: null,
            RoleName1value1: "",
            RoleCodevalue1: "",
            Descriptionvalue1: ""
          };

          // 刷新表格
          const tableResponse = await this.executeBackendInterface('getAllRoles0VT', {
            current: this.RoleTablecurrent2,
            pageSize: this.RoleTablepageSize1
          });
          if (tableResponse.flag) {
            this.RoleTabledata1.dataSource = tableResponse.data.data.map(item => ({
              id: item.id,
              roleName: item.role_name,
              roleCode: item.role_code,
              roleDescription: item.role_description
            }));
            this.RoleTabletotal1 = tableResponse.data.total;
          } else {
            message.error(tableResponse.message);
          }
        } else {
          message.error(response.message);
        }
      } catch (errorInfo) {
        console.log('Failed:', errorInfo);
      }
    },
    cancelAddModal() {
      // 关闭弹窗
      this.AddedpopupwindowisShow1 = false;

      // 清空表单数据
      this.Addedpopupwindowform1 = {
        id: null,
        RoleName1value1: "",
        RoleCodevalue1: "",
        Descriptionvalue1: ""
      };
    },
    async showPermissionModal(record) {
      // 获取所有权限项
      const allPermissionsResponse = await this.executeBackendInterface('getAllPermissions', {});
      if (!allPermissionsResponse.flag) {
        message.error('获取所有权限项失败');
        return;
      }
      const allPermissions = allPermissionsResponse.data.map(permission => ({
        label: permission.functionName,
        value: permission.code
      }));

      // 获取当前角色的权限项
      const rolePermissionsResponse = await this.executeBackendInterface('getRolePermissions', {
        roleId: record.id
      });
      if (!rolePermissionsResponse.flag) {
        message.error('获取角色权限项失败');
        return;
      }
      const rolePermissions = rolePermissionsResponse.data.map(permission => permission.permission_code);

      // 设置权限项下拉框的选项和默认值
      this.PermissionAssignmentPopupform1.PermissionItemvalue1 = rolePermissions;
      this.$refs.ref84.options = allPermissions;

      // 显示权限分配弹窗
      this.PermissionAssignmentPopupisShow1 = true;
    },
    closePermissionModal() {
      // 关闭权限分配弹窗
      this.PermissionAssignmentPopupisShow1 = false;
    },
    async fetchAndSetVariables() {
      try {
        // 调用后端接口获取变量数组 需要传入pageUuid变量
        const pageUuid = '1834884426861903872';
        const response = await axios.get(`./system/permission/getCurrentPageNotShowVariable?pageUuid=${pageUuid}`);
        const variablesArray = response.data; // 后端直接返回变量数组

        if (variablesArray && Array.isArray(variablesArray))
          // 遍历数组，将每个变量设置为true
          variablesArray.forEach(variable => {
            this[variable] = true;
          });
      } catch (error) {
        console.error('获取变量失败:', error);
      }
    },
    executeBackendInterface(funcName, params) {
      // 处理参数为Map的情况
      if (params instanceof Map) {
        params = Object.fromEntries(params);
      }
      // 调用后端接口
      return new Promise((resolve, reject) => {
        axios.post('./Rolemanagement/' + funcName, params, {
          headers: {
            'Content-Type': 'application/json'
          }
        }).then(response => {
          resolve(response.data);
        }).catch(error => {
          reject(error);
        });
      });
    }
  },
  mounted() {
    loadCss('./css/角色管理/theme.css');
    this.initFetchAllRoles();
    // 组件挂载后自动调用函数获取变量
    this.fetchAndSetVariables();
  },
  computed: {}
};

</script>
<style lang="less">
.page-d9h59{
.webVueAntYtRectangleStyle{
opacity: 1;
box-shadow: 0px 0px 0px 0px transparent;
background: transparent;
border-top-left-radius: 0px;
border-top-right-radius: 0px;
border-bottom-left-radius: 0px;
border-bottom-right-radius: 0px;
border-top: 1px solid #CDCDCD;
border-right: 1px solid #CDCDCD;
border-bottom: 1px solid #CDCDCD;
border-left: 1px solid #CDCDCD;
}
.webVueAntYtRectangle {
    width: 100%;
    height:100%;

}

.webVueAntYtRectangleStyle-udacc{
background: #ffffff;
border-top: 1px solid transparent;
border-right: 1px solid transparent;
border-bottom: 1px solid transparent;
border-left: 1px solid transparent;
}

.webVueAntYtButtonStyle{
opacity: 1;
color: #FFFFFF;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
background: #4A90E2;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
border-top: 0px solid #D9D9D9;
border-right: 0px solid #D9D9D9;
border-bottom: 0px solid #D9D9D9;
border-left: 0px solid #D9D9D9;
box-shadow: 0px 0px 0px 0px transparent;
padding-top: 2px;
padding-right: 0px;
padding-bottom: 2px;
padding-left: 0px;
}
.webVueAntYtButtonStyle>span{
line-height: 28px;
letter-spacing: 0px;
text-decoration: none;
font-style: normal;
text-align: center;
text-align-last: center;
}
.webVueAntButton  {
  width: 100%;
  height:100%;
  display: flex;
}
.webVueAntButton .span:first-child{
  flex: 0 0 8px;
}
.webVueAntButton .yt-button-content{
  display: inline-block;
  flex: 1;
}

.webVueAntButton.ant-btn-loading.center .yt-button-content,
.webVueAntButton.ant-btn-loading.right .yt-button-content,
.webVueAntButton.ant-btn-loading.left .yt-button-content {
  flex: 0 0 auto;
}
.webVueAntButton span:focus{
  outline: none;
}
.webVueAntButton.ant-btn-two-chinese-chars>:not(.anticon) {
  margin-right: 0;
}

.webVueAntYtButtonStyle-lr9t2{
color: #FFFFFF !important;
background: #3C8EFF !important;
align-items: center;
justify-content: center;
}
.webVueAntYtButtonStyle-lr9t2>span{
letter-spacing: 0px !important;
}

.webVueAntYtRectangleStyle-gwwui{
background: #ffffff;
border-top: 1px solid transparent;
border-right: 1px solid transparent;
border-bottom: 1px solid transparent;
border-left: 1px solid transparent;
}

.webVueAntYtInputFormItem{
flex-direction: row;
opacity: 1;
}
.webVueAntYtInputFormItem .ant-form-item-label label{
text-decoration: none;
font-style: normal;
color: #333333;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
width: 52px;
padding-top: 0px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
}
.webVueAntYtInputFormItem .ant-form-item-label label .label-content{
text-align: left;
text-align-last: left;
}
.webVueAntYtInputStyle:not(.ant-input-affix-wrapper){
color: #333333;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
background: #FFFFFF;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
border-top: 1px solid #CDCDCD;
border-right: 1px solid #CDCDCD;
border-bottom: 1px solid #CDCDCD;
border-left: 1px solid #CDCDCD;
box-shadow: 0px 0px 0px 0px transparent;
text-decoration: none;
font-style: normal;
text-align: left;
text-align-last: left;
padding-top: 0px;
padding-right: 10px;
padding-bottom: 0px;
padding-left: 12px;
}
.webVueAntYtInputStyle.ant-input-affix-wrapper{
background: #FFFFFF;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
border-top: 1px solid #CDCDCD;
border-right: 1px solid #CDCDCD;
border-bottom: 1px solid #CDCDCD;
border-left: 1px solid #CDCDCD;
box-shadow: 0px 0px 0px 0px transparent;
padding-top: 0px;
padding-right: 10px;
padding-bottom: 0px;
padding-left: 12px;
}
.webVueAntYtInputStyle.ant-input-affix-wrapper input{
text-decoration: none;
font-style: normal;
text-align: left;
text-align-last: left;
color: #333333;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
}
.webVueAntYtInputStyle:not(.ant-input-affix-wrapper)::placeholder,.webVueAntYtInputStyle:not(.ant-input-affix-wrapper)::-webkit-input-placeholder,.webVueAntYtInputStyle input::placeholder,.webVueAntYtInputStyle input::-webkit-input-placeholder{
color: #999999;
}
.webVueAntInputFormItem  {
  flex-wrap: nowrap;
}
.webVueAntInputFormItem ,
.webVueAntinput,
.webVueAntInputFormItem .ant-form-item-control-input,
.webVueAntInputFormItem .ant-form-item-control-input .ant-form-item-control-input-content {
  width: 100%;
  height: 100%;
}
.webVueAntInputFormItem .ant-form-item-label {
  flex-shrink: 0;
  padding: 0;
  text-align: left;
}
.webVueAntInputFormItem .ant-form-item-label label {
  width: 100%;
  height: 100%;
}
.webVueAntInputFormItem .ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional):before {
  margin-top: 4px;
}
.webVueAntInputFormItem .ant-form-item-label label .label-content{
  flex: 1;
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
}
.webVueAntInputFormItem .ant-form-item-label>label.ant-form-item-no-colon:after {
  display: none;
}
.webVueAntInputFormItem .ant-form-item-label label .ant-form-item-content {
  white-space: nowrap;
}
.webVueAntInputFormItem.hide-label .ant-form-item-label {
  display: none;
}
.webVueAntInputFormItem .ant-form-item-content:focus{
  outline: none;
}
.webVueAntinput.ant-input-affix-wrapper input {
  background-color: transparent;
}


.webVueAntYtInputFormItem-wmuux .ant-form-item-explain{
position: absolute;
top: 100%;
z-index: -1;
}
.webVueAntYtInputFormItem-wmuux .ant-form-item-label label{
width: 67px;
padding-right: 10px;
}
.webVueAntYtInputStyle-zr72t:not(.ant-input-affix-wrapper){
background: #FFFFFF !important;
}

.webVueAntYtButtonStyle-3iwpb{
color: #FFFFFF !important;
background: #3C8EFF !important;
align-items: center;
justify-content: center;
}
.webVueAntYtButtonStyle-3iwpb>span{
letter-spacing: 0px !important;
}

.webVueAntYtButtonStyle-nt56z{
color: #4A90E2 !important;
background: transparent !important;
border-top: 1px solid #4A90E2;
border-right: 1px solid #4A90E2;
border-bottom: 1px solid #4A90E2;
border-left: 1px solid #4A90E2;
align-items: center;
justify-content: center;
}
.webVueAntYtButtonStyle-nt56z>span{
letter-spacing: 0px !important;
}

.webVueAntYtModalStyle .ant-modal-wrap{
opacity: 1;
box-shadow: 0px 0px 0px 0px transparent;
border-top-left-radius: 6px;
border-top-right-radius: 6px;
border-bottom-left-radius: 6px;
border-bottom-right-radius: 6px;
border-top: 1px solid transparent;
border-right: 1px solid transparent;
border-bottom: 1px solid transparent;
border-left: 1px solid transparent;
}
.webVueAntYtModalStyle .ant-modal-wrap .yt-custom-modal-header{
text-decoration: none;
font-style: normal;
text-align: left;
text-align-last: left;
color: #333333;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
padding-top: 12px;
padding-right: 0px;
padding-bottom: 12px;
padding-left: 21px;
}
.webVueAntYtModalStyle.yt-custom-modal .ant-modal-header{
height: 45px;
background: #ffffff;
}
.webVueAntYtModalStyle .ant-modal-wrap .ant-modal-close-x{
height: 45px;
line-height: 45px;
}
.webVueAntYtModalStyle.yt-custom-modal .ant-modal-footer{
height: 57px;
background: #ffffff;
}
.webVueAntYtModal {
    width: 100%;
    height: 100%;
}



.webVueAntYtInputFormItem-tk57k .ant-form-item-explain{
position: absolute;
top: 100%;
z-index: -1;
}
.webVueAntYtInputFormItem-tk57k .ant-form-item-label label{
width: 78px;
padding-right: 10px;
}
.webVueAntYtInputStyle-28vcp:not(.ant-input-affix-wrapper){
background: #FFFFFF !important;
}

.webVueAntYtInputFormItem-wj8c2 .ant-form-item-explain{
position: absolute;
top: 100%;
z-index: -1;
}
.webVueAntYtInputFormItem-wj8c2 .ant-form-item-label label{
width: 78px;
padding-right: 10px;
}
.webVueAntYtInputStyle-brxbt:not(.ant-input-affix-wrapper){
background: #FFFFFF !important;
}

.webVueAntYtTable {
    display: inline-block;
}
.webVueAntYtTable .ant-radio-input {
    display: none;
}
.webVueAntYtTable thead tr th div:first-child {
    display: flex !important;
    align-items: center;
}
.webVueAntYtTable thead tr th:before {
    content: none !important;
}
.webVueAntYtTable thead tr th:not(.ant-table-selection-column), .webVueAntYtTable .ant-table-tbody tr td:not(.ant-table-selection-column) {
    padding: 0 !important;
}
.webVueAntYtTable thead tr th.ant-table-selection-column, .webVueAntYtTable .ant-table-tbody tr td.ant-table-selection-column {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.webVueAntYtTable .ant-table-tbody tr td, .webVueAntYtTable thead tr th {
    position: relative;
}
.webVueAntYtTable .ant-table-tbody tr td .td-text, .webVueAntYtTable thead tr th .th-text {
    width: 100%;
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.webVueAntYtTable .ant-table-tbody tr td {
    border-top: 0 !important;
}
.webVueAntYtTable .ant-table-tbody tr td .ant-radio-wrapper {
    align-items: center;
}
.webVueAntYtTable .ant-table-tbody tr:last-child td {
    border-bottom: 0 !important;
}
.webVueAntYtTable .ant-pagination {
    display: flex;
}

.webVueAntYtTable .add-pointer {
    display: flex !important;
}
.webVueAntYtTable .ant-table-thead .ant-table-cell-scrollbar {
    width: 6px;
}
.webVueAntYtTable .ant-table-header colgroup col:not(.ant-table-selection-col) {
    width: auto !important;
}
:focus-visible {
    outline: none;
}
.webVueAntYtTable .ant-table-body::-webkit-scrollbar {
    width: 6px;
    height: 6px;
    border-radius: 2px;
}
.webVueAntYtTable .ant-table-body::-webkit-scrollbar-thumb {
    background-color: #ccc;
}
.webVueAntYtTable.custom-table .ant-table-content {
    overflow: hidden !important;
    max-height: unset !important;
}

.webVueAntYtTableStyle-k5k67{
opacity: 1;
}
.webVueAntYtTableStyle-k5k67 .ant-table{
box-shadow: 0px 0px 0px 0px transparent;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
border-top: 1px solid #D9D9D9;
border-right: 1px solid #D9D9D9;
border-bottom: 1px solid #D9D9D9;
border-left: 1px solid #D9D9D9;
}
.webVueAntYtTableStyle-k5k67 .ant-table th:first-child{
border-top-left-radius: 4px !important;
}
.webVueAntYtTableStyle-k5k67 .ant-table th:last-child{
border-top-right-radius: 4px !important;
}
.webVueAntYtTableStyle-k5k67 .ant-table tr:last-child td:first-child{
border-bottom-left-radius: 4px !important;
}
.webVueAntYtTableStyle-k5k67 .ant-table tr:last-child td:last-child{
border-bottom-right-radius: 4px !important;
}
.webVueAntYtTableStyle-k5k67 .ant-table .ant-table-thead tr,.webVueAntYtTableStyle-k5k67 .ant-table .ant-table-thead tr th div:first-child{
height: 50px;
}
.webVueAntYtTableStyle-k5k67 .ant-table .ant-table-thead tr th div.ant-table-selection{
line-height: 50px;
}
.webVueAntYtTableStyle-k5k67 .ant-table .ant-table-thead tr th{
background: #4A90E20D;
}
.webVueAntYtTableStyle-k5k67 .ant-table .ant-table-thead tr span.th-text{
color: #000000A6;
font-family: Microsoft YaHei;
font-size: 16px;
font-weight: bold;
line-height: 50px;
letter-spacing: 0px;
font-style: normal;
text-align: center;
text-align-last: center;
text-decoration: none;
padding-top: 0px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
}
.webVueAntYtTableStyle-k5k67 .ant-table tbody tr td{
height: 50px;
}
.webVueAntYtTableStyle-k5k67 .ant-table tbody tr td .ant-checkbox-wrapper{
line-height: 50px;
}
.webVueAntYtTableStyle-k5k67 .ant-table tbody tr td{
background: #FFFFFF;
}
.webVueAntYtTableStyle-k5k67 .ant-table thead tr th,.webVueAntYtTableStyle-k5k67 .ant-table .ant-table-tbody tr:not(:last-child) td{
border-bottom: 1px solid #dcdcdc;
}
.webVueAntYtTableStyle-k5k67 .ant-table thead tr th:not(:last-child),.webVueAntYtTableStyle-k5k67 .ant-table .ant-table-tbody tr td:not(:last-child){
border-right: 1px solid #dcdcdc;
}
.webVueAntYtTableStyle-k5k67.ant-table-striped .ant-table tbody tr:nth-child(2n-1) td{
background: #FFFFFF;
}
.webVueAntYtTableStyle-k5k67.ant-table-striped .ant-table tbody tr:nth-child(2n) td{
background: #FFFFFF;
}
.webVueAntYtTableStyle-k5k67 .ant-table tbody tr:not(.ant-table-row-selected):hover td{
background: #E4EFFF !important;
}
.webVueAntYtTableStyle-k5k67 .ant-table tbody tr:not(.ant-table-row-selected):hover td span.td-text{
color: #000000 !important;
}
.webVueAntYtTableStyle-k5k67 .ant-table-tbody tr.ant-table-row-selected td{
background: #3C8EFF !important;
}
.webVueAntYtTableStyle-k5k67 .ant-table-tbody tr.ant-table-row-selected td span.td-text{
color: #FFFFFF !important;
}
.webVueAntYtTableStyle-k5k67 .ant-pagination li:not(.ant-pagination-options),.webVueAntYtTableStyle-k5k67 .ant-pagination button,.webVueAntYtTableStyle-k5k67 .ant-pagination li .ant-select .ant-select-selector,.webVueAntYtTableStyle-k5k67 .ant-pagination li input{
border-top-left-radius: 4px;
border-top-right-radius: 4px;
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
background: #FFFFFF;
color: #000000A6;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
line-height: 32px;
letter-spacing: 0px;
text-align: center;
text-align-last: center;
font-style: normal;
text-decoration: none;
}
.webVueAntYtTableStyle-k5k67 .ant-pagination button,.webVueAntYtTableStyle-k5k67 .ant-pagination li .ant-select .ant-select-selector,.webVueAntYtTableStyle-k5k67 .ant-pagination li input,.webVueAntYtTableStyle-k5k67 .ant-pagination li a,.webVueAntYtTableStyle-k5k67 .ant-pagination li .ant-pagination-options-quick-jumper{
padding-top: 0px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
}
.webVueAntYtTableStyle-k5k67 .ant-pagination li:not(.ant-pagination-options),.webVueAntYtTableStyle-k5k67 .ant-pagination li.ant-pagination-options .ant-pagination-options-size-changer.ant-select .ant-select-selector,.webVueAntYtTableStyle-k5k67 .ant-pagination li.ant-pagination-options .ant-pagination-options-quick-jumper input{
border-top: 1px solid #D9D9D9;
border-right: 1px solid #D9D9D9;
border-bottom: 1px solid #D9D9D9;
border-left: 1px solid #D9D9D9;
}
.webVueAntYtTableStyle-k5k67 .ant-pagination li button{
border: none;
}
.webVueAntYtTableStyle-k5k67 .ant-pagination li a,.webVueAntYtTableStyle-k5k67 .ant-pagination li .ant-pagination-options-quick-jumper{
color: #000000A6;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
line-height: 32px;
letter-spacing: 0px;
text-align: center;
text-align-last: center;
font-style: normal;
text-decoration: none;
}
.webVueAntYtTableStyle-k5k67 .ant-pagination li.ant-pagination-item-active{
background: #FFFFFF;
border-top: 1px solid #1890ff;
border-right: 1px solid #1890ff;
border-bottom: 1px solid #1890ff;
border-left: 1px solid #1890ff;
}
.webVueAntYtTableStyle-k5k67 .ant-pagination li.ant-pagination-item-active a{
color: #1890ff;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
line-height: 32px;
letter-spacing: 0px;
text-align: center;
text-align-last: center;
font-style: normal;
text-decoration: none;
}
.webVueAntYtTableStyle-k5k67 tr td:nth-child(1) div:first-child{
text-align: center;
text-align-last: center;
padding-top: 0px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
}
.webVueAntYtTableStyle-k5k67 tr td:nth-child(1) div:first-child span.td-text{
color: #000000A6;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
line-height: 50px;
letter-spacing: 0px;
text-decoration: none;
font-style: normal;
}
.webVueAntYtTableStyle-k5k67 tr > th:nth-child(1), .webVueAntYtTableStyle-k5k67 .ant-table-body tr.ant-table-measure-row td:nth-child(1){
width: calc((100% - 0px) / 4) !important;
min-width: 1px !important;
max-width: 1px !important;
}
.webVueAntYtTableStyle-k5k67 tr td:nth-child(2) div:first-child{
text-align: center;
text-align-last: center;
padding-top: 0px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
}
.webVueAntYtTableStyle-k5k67 tr td:nth-child(2) div:first-child span.td-text{
color: #000000A6;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
line-height: 50px;
letter-spacing: 0px;
text-decoration: none;
font-style: normal;
}
.webVueAntYtTableStyle-k5k67 tr > th:nth-child(2), .webVueAntYtTableStyle-k5k67 .ant-table-body tr.ant-table-measure-row td:nth-child(2){
width: calc((100% - 0px) / 4) !important;
min-width: 1px !important;
max-width: 1px !important;
}
.webVueAntYtTableStyle-k5k67 tr td:nth-child(3) div:first-child{
text-align: center;
text-align-last: center;
padding-top: 0px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
}
.webVueAntYtTableStyle-k5k67 tr td:nth-child(3) div:first-child span.td-text{
color: #000000A6;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
line-height: 50px;
letter-spacing: 0px;
text-decoration: none;
font-style: normal;
}
.webVueAntYtTableStyle-k5k67 tr > th:nth-child(3), .webVueAntYtTableStyle-k5k67 .ant-table-body tr.ant-table-measure-row td:nth-child(3){
width: calc((100% - 0px) / 4) !important;
min-width: 1px !important;
max-width: 1px !important;
}
.webVueAntYtTableStyle-k5k67 tr td:nth-child(4) div:first-child{
text-align: center;
text-align-last: center;
padding-top: 0px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
}
.webVueAntYtTableStyle-k5k67 tr td:nth-child(4) div:first-child span.td-text{
color: #000000A6;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
line-height: 50px;
letter-spacing: 0px;
text-decoration: none;
font-style: normal;
}
.webVueAntYtTableStyle-k5k67 tr > th:nth-child(4), .webVueAntYtTableStyle-k5k67 .ant-table-body tr.ant-table-measure-row td:nth-child(4){
width: calc((100% - 0px) / 4) !important;
min-width: 1px !important;
max-width: 1px !important;
}
.webVueAntYtTableStyle-k5k67{
width: 100%;
}

.webVueAntYtButtonStyle-mam7g{
color: #4A90E2 !important;
background: transparent !important;
align-items: center;
justify-content: center;
}
.webVueAntYtButtonStyle-mam7g>span{
letter-spacing: 0px !important;
}

.webVueAntYtButtonStyle-25eak{
color: #4A90E2 !important;
background: transparent !important;
align-items: center;
justify-content: center;
}
.webVueAntYtButtonStyle-25eak>span{
letter-spacing: 0px !important;
}

.webVueAntYtButtonStyle-r4gnz{
color: #D0021BD1 !important;
background: transparent !important;
align-items: center;
justify-content: center;
}
.webVueAntYtButtonStyle-r4gnz>span{
letter-spacing: 0px !important;
}

.webVueAntYtTextAreaFormItem{
flex-direction: row;
opacity: 1;
}
.webVueAntYtTextAreaFormItem .ant-form-item-label label{
text-decoration: none;
font-style: normal;
color: #333333;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
width: 52px;
padding-top: 4px;
padding-right: 0px;
padding-bottom: 6px;
padding-left: 0px;
}
.webVueAntYtTextAreaFormItem .ant-form-item-label label .label-content{
text-align: left;
text-align-last: left;
}
.webVueAntYtTextAreaStyle.ant-input{
background: #FFFFFF;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
border-top: 1px solid #CDCDCD;
border-right: 1px solid #CDCDCD;
border-bottom: 1px solid #CDCDCD;
border-left: 1px solid #CDCDCD;
box-shadow: 0px 0px 0px 0px transparent !important;
}
.webVueAntYtTextAreaStyle.ant-input,.webVueAntYtTextAreaStyle:not(.ant-input) .ant-input{
color: #333333;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
line-height: 32px;
letter-spacing: 0px;
vertical-align: undefined;
text-decoration: none;
font-style: normal;
text-align: left;
text-align-last: left;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
padding-top: 0px;
padding-right: 10px;
padding-bottom: 0px;
padding-left: 12px;
}
.webVueAntYtTextAreaStyle.ant-input::placeholder,.webVueAntYtTextAreaStyle.ant-input::-webkit-input-placeholder,.webVueAntYtTextAreaStyle:not(.ant-input) .ant-input::placeholder,.webVueAntYtTextAreaStyle:not(.ant-input) .ant-input::-webkit-input-placeholder{
color: #999999;
}
.webVueAntYtTextAreaStyle.ant-input:disabled{
background: #FFFFFF;
}
.webVueAntTextAreaFormItem  {
  flex-wrap: nowrap;
}
.webVueAntTextAreaFormItem ,
.webVueAntTextAreaFormItem .ant-form-item-control-input,
.webVueAntTextAreaFormItem .ant-form-item-control-input .ant-form-item-control-input-content {
  width: 100%;
  height: 100%;
}
.webVueAntTextAreaFormItem .ant-form-item-label {
  flex-shrink: 0;
  padding: 0;
  text-align: left;
}
.webVueAntTextAreaFormItem label {
  width: 100%;
  height: 100%;
  align-items: flex-start;
  line-height: 32px;
}
.webVueAntTextAreaFormItem .ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional):before {
  margin-top: 4px;
}
.webVueAntTextAreaFormItem .ant-form-item-label label .label-content{
  flex: 1;
  height: 100%;
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
}
.webVueAntTextAreaFormItem .ant-form-item-label>label.ant-form-item-no-colon:after {
  display: none;
}
.webVueAntTextAreaFormItem .ant-form-item-label label .ant-form-item-content {
  white-space: nowrap;
}
.webVueAntTextAreaFormItem.hide-label .ant-form-item-label {
  display: none;
}
.webVueAntTextAreaFormItem .ant-form-item-content:focus{
  outline: none;
}
.webVueAntTextarea {
  width: 100%;
  height: 100% !important;
}
.webVueAntTextarea .ant-input {
  background-color: transparent;
}


.webVueAntYtTextAreaFormItem-jyjsz .ant-form-item-explain{
position: absolute;
top: 100%;
z-index: -1;
}
.webVueAntYtTextAreaFormItem-jyjsz .ant-form-item-label label{
width: 39px;
padding-top: 0px;
padding-right: 10px;
padding-bottom: 0px;
}
.webVueAntYtTextAreaStyle-xtxlf.ant-input{
background: #FFFFFF !important;
}


.webVueAntYtInputFormItem-8aj10 .ant-form-item-explain{
position: absolute;
top: 100%;
z-index: -1;
}
.webVueAntYtInputFormItem-8aj10 .ant-form-item-label label{
width: 78px;
padding-right: 10px;
}
.webVueAntYtInputStyle-oe1wr:not(.ant-input-affix-wrapper){
background: #FFFFFF !important;
}

.webVueAntYtTextAreaFormItem-c7h75 .ant-form-item-explain{
position: absolute;
top: 100%;
z-index: -1;
}
.webVueAntYtTextAreaFormItem-c7h75 .ant-form-item-label label{
width: 39px;
padding-top: 0px;
padding-right: 10px;
padding-bottom: 0px;
}
.webVueAntYtTextAreaStyle-2pc1u.ant-input{
background: #FFFFFF !important;
}


.webVueAntYtSelectFormItem{
flex-direction: row;
opacity: 1;
}
.webVueAntYtSelectFormItem .ant-form-item-label label{
text-decoration: none;
font-style: normal;
color: #333333;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
width: 52px;
padding-top: 0px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
}
.webVueAntYtSelectFormItem .ant-form-item-label label .label-content{
text-align: left;
text-align-last: left;
}
.webVueAntYtSelectStyle .ant-select-selector{
background: #FFFFFF !important;
border-top-left-radius: 4px !important;
border-top-right-radius: 4px !important;
border-bottom-left-radius: 4px !important;
border-bottom-right-radius: 4px !important;
border-top: 1px solid #CDCDCD !important;
border-right: 1px solid #CDCDCD !important;
border-bottom: 1px solid #CDCDCD !important;
border-left: 1px solid #CDCDCD !important;
box-shadow: 0px 0px 0px 0px transparent;
padding-top: 0px !important;
padding-right: 10px !important;
padding-bottom: 0px !important;
padding-left: 12px !important;
}
.webVueAntYtSelectStyle .ant-select-selector .ant-select-selection-item{
color: #333333;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal !important;
letter-spacing: 0px;
text-decoration: none;
font-style: normal;
}
.webVueAntYtSelectStyle .ant-select-selector .ant-select-selection-search input{
color: #333333;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal !important;
letter-spacing: 0px;
text-decoration: none;
font-style: normal;
}
.webVueAntYtSelectStyle .ant-select-selector .ant-select-selection-placeholder{
color: #999999;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
letter-spacing: 0px;
text-decoration: none;
font-style: normal;
}
.webVueAntYtSelectStyle .ant-select-dropdown{
border-top-left-radius: 2px !important;
border-top-right-radius: 2px !important;
border-bottom-left-radius: 2px !important;
border-bottom-right-radius: 2px !important;
background: #ffffff !important;
border-top: 1px solid transparent !important;
border-right: 1px solid transparent !important;
border-bottom: 1px solid transparent !important;
border-left: 1px solid transparent !important;
box-shadow: 0px 0px 10px 0px rgba(153,153,153,0.3);
padding-top: 0px !important;
padding-right: 0px !important;
padding-bottom: 0px !important;
padding-left: 0px !important;
}
.webVueAntYtSelectStyle .ant-select-dropdown .ant-select-item{
color: #333333;
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: Normal;
letter-spacing: 0px;
text-decoration: none;
font-style: normal;
}
.webVueAntYtSelectStyle .ant-select-dropdown .ant-select-item-option-selected{
background: #E6EFFE;
color: #333333;
}
.webVueAntYtSelectStyle .ant-select-dropdown .ant-select-item:hover{
background: #F0F0F0;
color: #333333;
}
.webVueSelectFormItem  {
  flex-wrap: nowrap;
}
.webVueSelectFormItem ,
.webVueSelectFormItem .ant-form-item-control-input,
.webVueSelectFormItem .ant-form-item-control-input .ant-form-item-control-input-content,
.webVueSelectFormItem .ant-form-item-control-input  .ant-select-selector .ant-select-selection-search input{
  width: 100%;
  height: 100%;
}
.webVueSelectFormItem .ant-form-item-control {
  min-width: 0;
}
.webVueSelectFormItem .ant-form-item-label {
  flex-shrink: 0;
  padding: 0;
  text-align: left;
}
.webVueSelectFormItem  .ant-form-item-label label {
  width: 100%;
  height: 100%;
}
.webVueSelectFormItem .ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional):before {
  margin-top: 4px;
}
.webVueSelectFormItem .ant-form-item-label label .label-content{
  flex: 1;
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
}
.webVueSelectFormItem .ant-form-item-label>label.ant-form-item-no-colon:after {
  display: none;
}
.webVueSelectFormItem .ant-form-item-label label .ant-form-item-content {
  white-space: nowrap;
}
.webVueSelectFormItem.hide-label .ant-form-item-label {
  display: none;
}
.webVueSelectFormItem .ant-form-item-content:focus{
  outline: none;
}
.webVueSelect.ant-select-single .ant-select-selector .ant-select-selection-placeholder,
.webVueSelect.ant-select-single .ant-select-selector{
  display: flex;
  align-items: center;
}

.webVueSelect {
  width: 100%;
  height:100%;
}
.webVueSelect .ant-select-selector {
  width: 100% !important;
  height: 100% !important;
  overflow: auto;
}

.webVueAntYtSelectFormItem-6oitv .ant-form-item-explain{
position: absolute;
top: 100%;
z-index: -1;
}
.webVueAntYtSelectFormItem-6oitv .ant-form-item-label label{
width: 53px;
padding-right: 10px;
}}
</style>